1. Field of the Invention
This invention relates to the exchange of electronic documents in an electronic marketplace. In particular, the invention relates to methods for extending schemas which are used to interpret electronic documents used in business to business transactions.
2. Description of the Related Art
Techniques exist for supporting the exchange of electronic data between trading partners. A prominent and commonly used standard is Electronic Data Interchange, more commonly referred to by its acronym EDI. EDI refers to a set of messages used for business-to-business communication. The messages are compiled into business documents, which are exchanged to facilitate transactions between trading partners.
Each organization using EDI typically stores its data in a private format. As such, trading partners employing EDI are typically required to contract in advance and develop software programs to map between their private data sets. Each time a new trading partner is added to a client list, a new translation program is required to format their data in conformance with the other trading partners on the list.
The EDI approach for supporting a commercial communications standard is to include the union of all universally required features into a global standard. EDI effectively includes a messaging standard for each transaction conducted between each set of trading partners. The inefficiencies which result from this system include the effort spent in generating a translator for every pair of trading partners and the redundancy inherent in generating original documents to facilitate largely similar transactions.
Techniques also exist for facilitating the safe evolution of code distributed over computer networks. Examples of such technologies include communication systems for distributed objects such as CORBA, DCOM, and SOAP. These systems allow communication and collaboration amongst objects distributed over networks. As such, they support object-oriented facilities such as inheritance and polymorphism, which enable objects to be modified safely and efficiently. However, these systems comprise interfaces between objects which are implemented in programming languages, rather than schema languages for encoding electronic documents distributed over computer networks.
Accordingly, it is desirable to establish an effective communications standard for encoding electronic documents. This standard should allow document types to evolve in order to facilitate new transactions, while preserving the integrity of the existing document types and the transactions they support. Because the library of document types which are used in such a standard will be shared by all trading partners in the marketplace, these resources should be available throughout the marketplace.